基本
デフォルトタイプ
最初から以下タイプが定義されてるので、足りてるならsignale[TYPE]('メッセージ')の形で即使うだけです。
awaitcompleteerrordebugfatalfavinfonotepausependingstarstartsuccesswarnwatchlog
以下はCLIでの使用例です。
const signale = require('signale');
const yargs = yargs.xxx(/* ... */);
// 引数情報表示
signale.info(`Port: ${argv.port}`);
// サーバー起動処理
signale.start('Server'));
// App起動処理
signale.start('App');
// ℹ info Port: 33322
// ▶ start Server
// ▶ start Appカスタムタイプ
SignaleClass をインポートして、自分用に作る必要があります。
const {Signale} = require('signale');
const signale = new Signale({
types: {
sake: {
color: 'green',
badge: '🍶',
label: 'sake'
}
}
});
signale.sake('Kokuryu');
// 🍶 sake Kokuryu補足情報をつける
スコープ、
const appLogger = signale.scope('cli:app');
appLogger.start('listen');
// [cli:app] › ▶ start listenや現在のファイル名、
signale.config({displayFilename: false});
// [cli.js] › ✔ success fooまたdisplayDateで年月日、displayTimestampで時分秒を出したりできます。
ログを表示しないようにする
開発中だけ出したいとかあると思います。
これは設定のstreamで/dev/nullに書き込むようにするとすべて捨てる事ができます。(以下はdev-nullパッケージを使ってます)
const devnull = require('dev-null');
const signale = new Signale({stream: devnull()});一部だけ消したい時は各typesで設定する必要があります。例えば、「debugタイプ捨ててぇ」時
const devnull = require('dev-null');
const signale = new Signale({
types: {
debug: {
stream: [devnull()]
}
}
});👦🏻「ログファイルに出してぇ」
const signale = new Signale({
stream: require('fs').createWriteStream('/tmp/foo.log')
});